# P396-P400
# 单继承
class Animal:

    def run(self):
        print("跑")

    def eat(self):
        print("吃")

    def drink(self):
        print("喝")

    def sleep(self):
        print("睡")

    def __evolution(self):
        print("进化的私有方法")

    def manual_evolution(self):
        print("手动进化，且调用进化方法")
        self.__evolution()

class Dog(Animal):

    def bark(self):
        print("叫唤")

    # 这是方法重写后的扩展，想要扩展必定先重写
    def run(self):
        super().run()   # 为了调用父类中的方法
        print("不仅能跑，还跑的特别快")

xiao_tian_quan_object = Dog()
xiao_tian_quan_object.run()
# 测试能不能在子类中调用父类的私有方法
# xiao_tian_quan_object.__evolution()   # 结果是不能
# 测试能不能在子类中调用父类的方法，在父类中调用父类的私有话方法
xiao_tian_quan_object.manual_evolution()    # 因为是父类调用的私有化的方法，所以是可以调用的，因为父类的私有方法是父类调用的，对于父类来说这个私有方法就不是对外的了
